# 如果形参的类型为数字或者字符串,
# 在函数内部修改了形参的值,实参的值不会改变
def my_func1(x):
    x = x * 3
    print("形参的值", x)
# a = "1"
# my_func1(a)
# print('实参的值', a)

#如果实参是列表，集合，字典，形参如果发生改变，会改变实参的值
#如果非要传很多数据，那么我们可以考虑使用元组
# 堆   存放对象
# 栈  存放临时变量
# 形参为数字或者字符串，实参不会随着形参改变而改变
# 形参为字典，列表，集合，实参会随着形参改变而改变
def my_func2(x):
    x[0]="你好"
    print("形参的值", x)

list1 = [1, 23, 21, 3]
my_func2(list1)
print('实参的值', list1)
def my_func3(x):
    print("my_func3", x)
my_func3(list1)
